1. Field of the Invention
The present invention relates to block level cache access in network environments.
2. Description of the Related Art
One development arising from the emergence of networked computing such as the Internet is that an entity's data storage requirements can be met by data storage facilities that are remote from the entity's computers but that are accessible over the network. To provide for fast data transfer through the network, data transfer standards such as the so-called iSCSI (Internet Small Computer Systems Interface) standard have been proposed.
The iSCSI protocol is a block level protocol that is very fast and that is optimized for small, simple commands for facilitating data transfers. It is an implementation of the SCSI protocol that was originally developed to support data transfer between a processor and a local data storage, in particular a local hard disk drive. The iSCSI protocol, on the other hand, is designed to work over TCP/IP (Internet Protocol), which is a general purpose, Internet-related protocol for transferring data through a local area network (LAN) or wide area network (WAN) such as the Internet or local area network. iSCSI thus combines the advantages of peripheral communication ability of SCSI with the data transports developed for IP.
Using what was originally a local hard drive transfer protocol (SCSI) in a WAN environment, such as the Internet, poses challenges. Such protocols emphasize speed but not security, since they were developed for non-networked environments. For example, a local client computer or network (e.g., a LAN) might support a high data transfer rate and low latency, whereas a WAN holding a data repository sought to be accessed by the LAN might not support as high a rate and/or have greater latency.
As recognized herein, a cache can be used to address the above-noted problem, since a cache is a device that temporarily holds data in a fast store and thus can be used as a buffer between a fast network and a slow one. A common function of caches is speculatively pre-fetching read data in anticipation of client requests. As also recognized herein, however, current block-level cache devices do not account for data security. Instead, in block level caches a closed, secure network is assumed, or it is assumed that in an open network data security is simply not a concern. The present invention, however, understands that in the type of network-based data storage applications made possible by modern WAN protocols and in particular made possible by iSCSI, data security at a block level cache is indeed a concern, particularly since several clients might use the same cache as a buffer between their faster, local networks and a slower network such as the Internet.
The present invention has recognized the above-noted problems and provides solutions to one or more of them as disclosed below.